package javaman.servlet;

import java.io.IOException;

import javaman.gestor.GestorCategoria;
import javaman.gestor.GestorProfesor;
import javaman.modelo.Categoria;
import javaman.modelo.ProfesorCategoria;
import javaman.modelo.Usuario;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class LoadRegistrarProfesorServlet
 */
public class LoadRegistrarProfesorServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
	GestorCategoria gestorCategoria = new GestorCategoria();
	GestorProfesor gestorProfesor = new GestorProfesor();
    /**
     * @see HttpServlet#HttpServlet()
     */
    public LoadRegistrarProfesorServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("Entro get");
		// TODO Auto-generated method stub
		Categoria[] categorias = gestorCategoria.listarCategorias();
		String destino = "/formularioProfesor.jsp";
		String accion = request.getParameter("accion");
		
		if(accion.equals("listar")) {
			request.setAttribute("arrListado",gestorProfesor.listarProfesores());
			destino = "/listadoProfesor.jsp";
		} else if(accion.equals("insertar")){
			request.setAttribute("arrCategorias",categorias);
		} else if(accion.equals("modificar")) {
		
			String idprofesor = request.getParameter("idprofesor");
			
			Usuario profesor = gestorProfesor.buscarProfesorById(Integer.parseInt(idprofesor));
			ProfesorCategoria profesorCategoria[] = gestorProfesor.buscarCategoriasByProfesor(Integer.parseInt(idprofesor));
			
			if(profesor!=null) {
				request.setAttribute("idprofesor", idprofesor);
				request.setAttribute("nombre", profesor.getNombres());
				request.setAttribute("paterno", profesor.getPaterno());
				request.setAttribute("materno", profesor.getMaterno());
				request.setAttribute("sexo", profesor.getIdsexo());
				request.setAttribute("documento", profesor.getIddocumento());
				request.setAttribute("numdocumento", profesor.getNumerodoc());
				request.setAttribute("mail", profesor.getMail());
				request.setAttribute("celular", profesor.getCelular());
				request.setAttribute("perfil", profesor.getPerfil());
				request.setAttribute("foto", profesor.getFoto());
				request.setAttribute("categorias", profesorCategoria);
				request.setAttribute("arrCategorias",categorias);
			}	
		} else if(accion.equals("eliminar")) {
			String idprofesor = request.getParameter("idprofesor");
			
			gestorProfesor.eliminarProfesor(Integer.parseInt(idprofesor));
			request.setAttribute("arrListado",gestorProfesor.listarProfesores());
			
			destino = "/listadoProfesor.jsp";
		}
		
		request.setAttribute("accion",accion);
		
		RequestDispatcher rd = request.getRequestDispatcher(destino);
		rd.forward(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
	}

}
